/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package administracion.helper;

import java.util.Observable;

/**
 *
 * @author Administrador
 */
public class Paginacion extends Observable{

    private int pagActual;
    private int pagTamano;
    private int maxResults;
    private int num_paginas;

    public Paginacion(int pagTamano) {
        this.pagTamano = pagTamano;
    }

    public Paginacion(int pagTamano, int maxResults) {
        this.pagTamano = pagTamano;
        this.maxResults = maxResults;
    }

    public int getNum_paginas() {
        return num_paginas;
    }

    public void setNum_paginas(int num_paginas) {
        this.num_paginas = num_paginas;
    }

    public int getMaxResults() {
        return maxResults;
    }

    public void setMaxResults(int maxResults) {
        this.maxResults = maxResults;
        this.num_paginas = (int)Math.ceil(maxResults/pagTamano);
        avisaObservadores();
    }

    
    public int getPagActual() {
        return pagActual;
    }

    public void setPagActual(int pagActual) {
        this.pagActual = pagActual;
    }

    public int getPagTamano() {
        return pagTamano;
    }

    public void setPagTamano(int pagTamano) {
        this.pagTamano = pagTamano;
    }

    public void siguiente() {
        pagActual++;
        avisaObservadores();
    }

    public void anterior() {
        pagActual--;
        if (pagActual < 0) {
            pagActual = 0;
        }
        avisaObservadores();
    }

    public void inicio(){
        pagActual=0;
        avisaObservadores();
    }

    public void finish(){
        pagActual=num_paginas;
        avisaObservadores();
    }

     public void avisaObservadores(){
      setChanged();
      notifyObservers();
    }
     
    
    

}
